package cn.bandeqing.worker.rpc;

import cn.bandeqing.base.resp.Resp;
import cn.bandeqing.base.resp.Table;
import cn.bandeqing.worker.req.*;
import cn.bandeqing.worker.resp.WalletListResp;
import cn.bandeqing.worker.resp.WorkerRegisterResp;
import cn.bandeqing.worker.resp.WorkerTable;
import cn.bandeqing.worker.resp.WorkerWalletResp;

import java.util.List;

public interface IWorkRpc {

    Resp<Table<WorkerTable>> table(WorkerTableReq req);

    void saveOrUpdate(WorkerSaveOrUpdateReq req);

    Resp<WorkerRegisterResp> register(WorkerRegisterReq req);

    Resp<Void> login(WorkerLoginReq req);

    Resp<Void> resetPwd(ResetPwdReq req);

    void modifyStatus(ModifyStatusReq req);

    void modifyLevel(ModifyLevelReq req);

    Resp<WorkerWalletResp> wallet();

    Resp<List<WalletListResp>> walletList(WalletListReq req);

    Resp<Void> modifyPwd(ModifyPwdReq req);

    Resp<Void> uploadEquipment(UploadEquipmentReq req);

    Resp<Void> withdraw(WithdrawReq req);

}
